package com.animee.tally.main_frag;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.animee.tally.R;
import com.animee.tally.db.TypeBean;
import java.util.List;
/* GridView的适配器对象，要继承BaseAdapter
* 1.重写4个方法   2.编写构造方法，需要将Context   和数据源传入过来
* */
public class TypeBaseAdapter extends BaseAdapter {
    Context context;
    List<TypeBean>mDatas;
    int selectPos = 0;   //选中位置
    public TypeBaseAdapter(Context context, List<TypeBean> mDatas) {
        this.context = context;
        this.mDatas = mDatas;
    }
//  返回项目的数量
    @Override
    public int getCount() {
        return mDatas.size();
    }
//  返回指定位置的对象
    @Override
    public Object getItem(int position) {
        return mDatas.get(position);
    }
//  返回位置的id
    @Override
    public long getItemId(int position) {
        return position;
    }
// 返回指定位置的布局
//    此适配器不需要复用，因为所有的item都显示在界面上，不会因为滑动就消失，所以没有剩余的convertview，所以不用写复用
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        convertView = LayoutInflater.from(context).inflate(R.layout.item_fraggv,null);
//        查找布局当中的控件
        ImageView iv = convertView.findViewById(R.id.item_fraggv_iv);
        TextView tv = convertView.findViewById(R.id.item_fraggv_tv);
        TypeBean typeBean = mDatas.get(position);
//        设置图片
//        判断当前位置是否为选中的位置，如果是选中的位置，就设置为带颜色的图片，否则设置为灰色图片
        if (selectPos == position) {
            iv.setImageResource(typeBean.getSImageId());
        }else {
            iv.setImageResource(typeBean.getImageId());
        }
        tv.setText(typeBean.getTypename());   //设置文字
        return convertView;
    }
}
